﻿using System.Collections.Generic;
using FluorineFx;
using Neturion.Dados;
using Neturion.Fachadas;

namespace Neturion.Servicos
{
    [RemotingService]
    public class ServicoContaBanco
    {
        public ContaBanco Inserir(ContaBanco contaBanco, Usuario usuarioPermissao)
        {
            return Fachada.GetInstancia().Inserir(contaBanco, usuarioPermissao);
        }

        public ContaBanco Atualizar(ContaBanco contaBanco, Usuario usuarioPermissao)
        {
            return Fachada.GetInstancia().Atualizar(contaBanco, usuarioPermissao);
        }

        public void Excluir(ContaBanco contaBanco, Usuario usuarioPermissao)
        {
            Fachada.GetInstancia().Excluir(contaBanco, usuarioPermissao);
        }

        public ContaBanco ObterContaBancoPorId(int id, Usuario usuarioPermissao)
        {
            return Fachada.GetInstancia().ObterContaBancoPorId(id, usuarioPermissao);
        }

        public IList<ContaBanco> ObterTodosContaBancos(Usuario usuarioPermissao)
        {
            return Fachada.GetInstancia().ObterTodosContaBancos(usuarioPermissao);
        }

        public IList<ContaBanco> ObterContaBancoPorNumero(string numero, Pessoa titular, Usuario usuarioPermissao)
        {
            return Fachada.GetInstancia().ObterContaBancoPorNumero(numero, titular, usuarioPermissao);
        }

        public IList<ContaBanco> ObterTodosContaBancos(
            string numero,
            TipoContaBanco tipoContaBanco,
            string descricao,
            Agencia agencia,
            Pessoa titular,
            Usuario usuarioPermissao)
        {
            return Fachada.GetInstancia().ObterTodosContaBancos(numero,tipoContaBanco,descricao,agencia,titular,usuarioPermissao);
        }
    }
}